package com.ssyt.yt1.day9.homework.oop;

/**
 * 班级
 * 
 * @author Administrator
 *
 */
public class Class {

	private String name;
	private Group[] groups;

	public Class() {
		super();
	}

	public Class(String name, Group[] groups) {
		super();
		this.setName(name);
		this.setGroups(groups);
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public Group[] getGroups() {
		return groups;
	}

	public void setGroups(Group[] groups) {
		this.groups = groups;
	}

	/**
	 * <pre>
	 * 输入班级名，能查询到其下的所有小组名及每个小组的学生信息，展示如下：
	 *       你查询的班级名为"云图1班"：
	 *       	  |—— 第一组，高富帅
	 *       	  	 |—— 菜头
	 *       	  	 |—— 小怪wu
	 *       	  |—— 第二组，青铜组
	 *       	  	 |—— 自强
	 *       	  	 |—— 羊羊
	 *       	  |—— 第三组，砖家组
	 *       	  	 |—— 大飞哥
	 * </pre>
	 */
	public void printGroupAndStudentInfo() {
		System.out.println("你查询的班级名为" + this.name + "：");
		for (int i = 0; i < groups.length; i++) {
			System.out.println("|—— 第" + (i + 1) + "组，" + groups[i].getName());
			Student[] students = groups[i].getStudents();
			for (int j = 0; j < students.length; j++) {
				System.out.println("\t|—— " + students[j].getName());
			}
		}
	}

	/**
	 * <pre>
	 * 输入指定学生名，能查询到其所属的小组信息及班级信息！
	 *       你查询的小组名为"菜头"：所在小组为“高富帅”，所在班级为“云图1班”！
	 * </pre>
	 * 
	 * @param studentName
	 */
	public boolean printStudentInfoByStudentName(String studentName) {
		String groupName = null;
		for (int i = 0; i < groups.length; i++) {
			Student[] students = groups[i].getStudents();
			for (int j = 0; j < students.length; j++) {
				if (students[j].getName().equals(studentName)) {
					groupName = groups[i].getName();
				}
			}
		}

		if (groupName == null) {
			System.out.println("查无此人");
			return false;
		} else {
			System.out.println("你查询的学生名为" + studentName + "：所在小组为" + groupName
					+ "，所在班级为" + this.name + "！");
			return true;
		}
	}
}
